package com.gxa.jjty.cjr.service;

import com.gxa.jjty.core.exception.BusinessException;
import com.gxa.jjty.core.pojo.Address;

import java.util.Map;

/**
 * Created with IntelliJ IDEA.
 *
 * @author : 宸濯
 * Date: 2021/12/07 14:48
 * Description:
 * Version: V1.0
 */
public interface AddressService {

    /**
     * 添加用户地址
     * @param address 目标用户地址
     * @return 操作结果
     * @throws BusinessException 添加异常
     */
    Map<String,Object> insert(Address address) throws BusinessException;

    /**
     * 修改用户地址
     * @param address 目标用户地址
     * @return 操作结果
     * @throws BusinessException 添加异常
     */
    Map<String,Object> update(Address address) throws BusinessException;

    /**
     * 根据id删除地址
     * @param id 地址id
     * @return 操作结果
     * @throws BusinessException 删除异常
     */
    Map<String,Object> delete(Long id) throws BusinessException;

    /**
     * 根据用户编号查询用户地址
     * @param id 用户编号
     * @return 用户地址列表
     * @throws BusinessException 添加异常
     */
    Map<String,Object> selectById(Long id) throws BusinessException;

    /**
     * 根据用户id查询默认地址
     * @param id 用户id
     * @return 默认地址
     * @throws BusinessException 查询异常
     */
    Map<String,Object> selectAddressPrimary(Long id) throws BusinessException;


}
